package com.yycx.module.bus.client.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yycx.common.mybatis.annotation.TableAlias;
import com.yycx.common.mybatis.base.entity.AbstractEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 开票单位
 *
 * @author flyme
 * @date 2020-08-02
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("bus_invoiceunit")
@TableAlias("invoiceunit")
@ApiModel(value="BusInvoiceunit对象", description="开票单位")
public class BusInvoiceunit extends AbstractEntity {

private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "主键")
    @TableId(value = "invoiceUnitId", type = IdType.ASSIGN_ID)
    private Long invoiceUnitId;

    @ApiModelProperty(value = "单位名称")
    private String invoiceunitName;

    @ApiModelProperty(value = "税率")
    private String taxNo;

    @ApiModelProperty(value = "收款账户")
    private String bankNo;

    @ApiModelProperty(value = "银行名称")
    private String bankName;

    @ApiModelProperty(value = "联系人")
    private String linkMan;

    @ApiModelProperty(value = "电话")
    private String telephone;

    @ApiModelProperty(value = "纳税人识别号")
    private String taxNumber;

    @ApiModelProperty(value = "机构ID")
    private Long organizationId;

    @ApiModelProperty(value = "签约时间")
    private Date contractDate;

    @ApiModelProperty(value = "状态")
    private Integer invoiceunitState;

    @ApiModelProperty(value = "企业ID")
    private Long companyId;

    @ApiModelProperty(value = "法人")
    private String legalPerson;

    @ApiModelProperty(value = "法人开户行")
    private String legalBankName;

    @ApiModelProperty(value = "法人卡号")
    private String legalBankNo;

    @ApiModelProperty(value = "额度开始日期")
    private String cycleStart;

    @ApiModelProperty(value = "总额度")
    private BigDecimal totalQuota;

    @ApiModelProperty(value = "已用额度")
    private BigDecimal useQuota;

    @ApiModelProperty(value = "剩余额度")
    private BigDecimal residueQuota;

    @ApiModelProperty(value = "当年额度")
    @TableField(exist = false)
    private BigDecimal yearQuota;

    @ApiModelProperty(value = "月额度")
    private BigDecimal monthQuota;

    @ApiModelProperty(value = "浮动额度")
    private BigDecimal slidingQuota;


}
